Circuitos de 2ª Ordem

Jupyter Notebook desenvolvido por Gustavo S.S.

"Todos os que podem cursar um mestrado em engenharia devem fazê-lo a fim de estender o sucesso de sua carreira! Se você quer trabalhar com pesquisa, o estado da arte em engenharia, lecionar em uma universidade ou iniciar seu próprio negócio, você realmente precisa cursar um doutorado!" - Charles K. Alexander

Circuitos contendo dois elementos de armazenamento, que são conhecidos como circuitos de segunda ordem, porque suas respostas são descritas como equações diferenciais contendo derivadas segundas.

Exemplos comuns de circuitos de segunda ordem são os RLC, onde estão presentes os três tipos de elementos passivos, como mostram Figuras 8.1a e b. Outros exemplos são circuitos RL e RC, como os indicados nas Figuras 8.1c e d.

Um circuito com amplificadores operacionais com dois elementos de armazenamento também pode ser um circuito de segunda ordem. Assim como nos circuitos de primeira ordem, o de segunda ordem pode conter vários resistores e fontes dependentes e independentes.

Um circuito de segunda ordem é caracterizado por uma equação diferencial de segunda ordem. Ele é formado por resistores e o equivalente de dois elementos de armazenamento.

Determinação dos valores inicial e final

Para a análise de circuitos de 2ª Ordem é preciso obter v(0), i(0), dv(0)/dt, di(0)/dt, i(∞) e v(∞), onde v é a tensão no capacitor e i a corrente no indutor. A tensão no capacitor é sempre contínua de modo que

\begin{align} {\Large v(0^+) = v(0^-) = v(0)} \end{align}

E a corrente no indutor é sempre contínua de modo que

\begin{align} {\Large i(0^+) = i(0^-) = i(0)} \end{align}

onde t = 0– representa o instante imediatamente anterior ao evento de comutação e t = 0+ é o instante imediatamente após o evento de comutação, supondo que esse evento ocorra em t = 0.

Exemplo 8.1

A chave na Figura 8.2 foi fechada há um bom tempo. Ela é aberta em t = 0. Determine:

a) v(0+), i(0+)

b) dv(0+)/dt, di(0+)/dt

c) i(∞) e v(∞)


In [1]:
print("Exemplo 8.1")

L = 0.25
C = 0.1
Vs = 12

#para t < 0
i0 = Vs/(4 + 2)
v0 = i0*2
print("Corrente i(0+):",i0,"A")
print("Tensão v(0+):",v0,"V")

#para t = 0+
#vl = L*di/dt
#di/dt = vl/L
vl = Vs - i0*4 - v0
di = vl/L
#ic = C*dv/dt
#dv/dt = ic/C
dv = i0/C
print("Taxa di/dt:",di,"A/s")
print("Taxa dv/dt:",dv,"V/s")

#para t = infinito
v = Vs
i = 0
print("Para t infinito, v:",v,"V")
print("Para t infinito, i:",i,"A")


Exemplo 8.1
Corrente i(0+): 2.0 A
Tensão v(0+): 4.0 V
Taxa di/dt: 0.0 A/s
Taxa dv/dt: 20.0 V/s
Para t infinito, v: 12 V
Para t infinito, i: 0 A

Problema Prático 8.1

A chave na Figura 8.4 foi aberta há um bom tempo, entretanto, foi fechada em t = 0.

a) v(0+), i(0+)

b) dv(0+)/dt, di(0+)/dt

c) i(∞) e v(∞)


In [2]:
print("Problema Prático 8.1")

L = 0.4
C = 1/20
Vs = 24

#para t < 0
i0 = Vs/(10 + 2)
v0 = i0*2
print("Corrente i(0+):",i0,"A")
print("Tensão v(0+):",v0,"V")

#para t = 0+
#di/dt = vl/L
vl = Vs - v0
di = vl/L
#dv/dt = ic/C
dv = 0
print("Taxa di/dt:",di,"A/s")
print("Taxa dv/dt:",dv,"V/s")

#para t = infinito
i = Vs/2
v = i*2
print("Corrente i(∞)",i,"A")
print("Tensão v(∞)",v,"V")


Problema Prático 8.1
Corrente i(0+): 2.0 A
Tensão v(0+): 4.0 V
Taxa di/dt: 50.0 A/s
Taxa dv/dt: 0 V/s
Corrente i(∞) 12.0 A
Tensão v(∞) 24.0 V

Exemplo 8.2

No circuito da Figura 8.5, calcule:

(a) iL(0+), vC(0+); vR(0+);

(b) diL(0+)/dt, dvC(0+)/dt, dvR(0+)/dt;

(c) iL(∞), vC(∞), vR(∞).


In [6]:
print("Exemplo 8.2")

L = 0.6
C = 1/2
Vs = 20
Cs = 3

#para t < 0
v0 = -Vs
i0 = 0
vr0 = Cs*4/(2 + 4) * 2
print("Corrente i(0+):",i0,"A")
print("Tensão v(0+):",v0,"V")
print("Tensão Vr(0+):",vr0,"V")

#para t = 0+
#di/dt = vl/L
vl = 0
di = vl/L
#dv/dt = ic/C
ic = Cs*2/(2 + 4)
dv = ic/C
#3 = vr/2 + v0/4
#0 = 2dvr/dt + dv0/dt
#-vr + v0 + vc + 20 = 0
#-dvr + dv0 + 2 = 0 => dv0 = dvr - 2
dvr = 2/3
print("Taxa di/dt:",di,"A/s")
print("Taxa dv/dt:",dv,"V/s")
print("Taxa dvr/dt:",dvr,"V/s")

#para t = ∞
i = Cs*2/(4 + 2)
v = -Vs
vr = (Cs - i)*2
print("Tensão i(∞):",i,"A")
print("Corrente v(∞):",v,"V")
print("Tensão vr(∞):",vr,"V")


Exemplo 8.2
Corrente i(0+): 0 A
Tensão v(0+): -20 V
Tensão Vr(0+): 4.0 V
Taxa di/dt: 0.0 A/s
Taxa dv/dt: 2.0 V/s
Taxa dvr/dt: 0.6666666666666666 V/s
Tensão i(∞): 1.0 A
Corrente v(∞): -20 V
Tensão vr(∞): 4.0 V

Problema Prático 8.2

Para o circuito da Figura 8.7, determine:

(a) iL(0+), vC(0+); vR(0+);

(b) diL(0+)/dt, dvC(0+)/dt, dvR(0+)/dt;

(c) iL(∞), vC(∞), vR(∞).


In [8]:
print("Problema Prático 8.2")

C = 1/5
L = 2
Cs1 = 6
Cs2 = 4

#para t < 0
i0 = -Cs1
v0 = 0
vr0 = 0
print("Corrente i(0+):",i0,"A")
print("Tensão v(0+):",v0,"V")
print("Tensão vr(0+):",vr0,"V")

#para t = 0+
#di/dt = vl/L
vl = 0
di = vl/L
#dv/dt = ic/C
ic = 4
dv = ic/C
#vr = vc - vl = 0
#dvr = 20 - dvl
#6 = vr/5 + il
#0 = dvr + 5di
#0 = dvr
dvr = 0
print("Taxa di/dt:",di,"A/s")
print("Taxa dv/dt:",dv,"V/s")
print("Taxa dvr/dt:",dvr,"V/s")

#para t = ∞
i = Cs2 - Cs1
vr = Cs2*5
vc = vr
print("Corrente i(∞):",i,"A")
print("Tensão v(∞):",v,"V")
print("Tensão vr(∞):",vr,"V")


Problema Prático 8.2
Corrente i(0+): -6 A
Tensão v(0+): 0 V
Tensão vr(0+): 0 V
Taxa di/dt: 0.0 A/s
Taxa dv/dt: 20.0 V/s
Taxa dvr/dt: 0 V/s
Corrente i(∞): -2 A
Tensão v(∞): -20 V
Tensão vr(∞): 20 V

Circuito RLC Série sem fonte

O circuito é excitado pela energia inicialmente armazenada no capacitor e indutor, representada pela tensão inicial V0 no capacitor e pela corrente inicial I0 no indutor. Portanto, em t = 0.

\begin{align} {\Large v(0) = \frac{1}{C} \int_{- \infty}^{0} idt = V_0} \end{align}\begin{align} {\Large i(0) = I_0} \end{align}

Aplicando a LKT no circuito da Figura 8.8:

\begin{align} {\Large Ri + L \frac{di}{dt} + \frac{1}{C} \int_{- \infty}^{0} i(\tau)d \tau = 0} \end{align}

Para eliminar a integral, diferenciamos em relação a t e reorganizamos os termos:

\begin{align} {\Large \frac{d^2i}{dt^2} + \frac{R}{L} \frac{di}{dt} + \frac{i}{LC} = 0} \end{align}

Esta é uma equação diferencial de segunda ordem e é o motivo para os circuitos RLC neste capítulo serem chamados circuitos de segunda ordem. Obtemos o valor inicial da derivada de i a partir de:

\begin{align} {\Large Ri(0) + L \frac{di(0)}{dt} + V_0 = 0} \end{align}

Nossa experiência no capítulo anterior sobre circuitos de primeira ordem nos sugere que a solução é na forma exponencial. Portanto, façamos:

\begin{align} {\Large i = Ae^{st}} \end{align}

onde A e s são constantes a serem determinadas. Substituindo nas equações anteriores:

\begin{align} {\Large As^2e^{st} + \frac{AR}{L}se^{st} + \frac{A}{LC}e^{st} = 0} \end{align}

ou:

\begin{align} {\Large Ae^{st} (s^2 + \frac{R}{L}s + \frac{1}{LC}) = 0} \end{align}

Já que i = Ae^(st) é a solução pressuposta de que estamos tentando encontrar, apenas a expressão entre parênteses pode ser zero:

\begin{align} {\Large s^2 + \frac{R}{L}s + \frac{1}{LC} = 0} end{align} Esta equação quadrática é conhecida como **equação característica da Equação diferencial** uma vez que as raízes da equação ditam as características básicas de i. As duas raízes são: \begin{align} {\Large s_1 = -\frac{R}{2L} + \sqrt{ (\frac{R}{2L})^2 - \frac{1}{LC}}} \\{\Large s_2 = -\frac{R}{2L} - \sqrt{ (\frac{R}{2L})^2 - \frac{1}{LC}}} \end{align}

Uma forma mais condensada de expressar as raízes é:

\begin{align} {\Large s_1 = -\alpha + \sqrt{ \alpha^2 - \omega_0^2 }} \\{\Large s_2 = -\alpha - \sqrt{ \alpha^2 - \omega_0^2 }} \end{align}

onde

\begin{align} {\Large \alpha = \frac{R}{2L} } \\{\Large \omega_0 = \frac{1}{ \sqrt{LC} }} \end{align}

As raízes s1 e s2 são chamadas frequências naturais, medidas em nepers por segundo (Np/s), pois estão associadas à resposta natural do circuito; v0 é conhecida como frequência ressonante ou estritamente como a frequência natural não amortecida expressa em radianos por segundo (rad/s); e a é a frequência de neper ou fator de amortecimento expresso em nepers por segundo.

Assim, pode-se escrever:

\begin{align} {\Large s^2 + 2 \alpha s + \omega_0^2 = 0} \end{align}

A razão α/ω0 é conhecida como fator de amortecimento, ζ.

Resposta do circuito RLC série:

Consequentemente, a resposta natural do circuito RLC em série é:

\begin{align} {\Large i(t) = A_1 e^{s_1 t} + A_2 e^{s_2 t}} \end{align}

onde as constantes A1 e A2 são determinadas a partir dos valores iniciais i(0) e di(0)/dt.

Assim, podemos inferir que existem três tipos de soluções:

  1. Se α > ω0 temos o caso de amortecimento supercrítico
  2. Se α = ω0 temos o caso de amortecimento crítico
  3. Se α < ω0 temos o caso de subamortecimento

Amortecimento Supercrítico (α > ω0)

Se α > ω0 implica C > 4L/R^2. Quando isso acontece, ambas as raízes s1 e s2 são negativas e reais. A resposta é:

\begin{align} {\Large i(t) = A_1 e^{s_1 t} + A_2 e^{s_2 t}} \end{align}

que decai e se aproxima de zero à medida que t aumenta.

Amortecimento Crítico (α = ω0)

Quando α = ω0, C = 4L/R^2 e:

\begin{align} {\Large s_1 = s_2 = -\alpha = -\frac{R}{2L}} \end{align}

Assim:

\begin{align} {\Large i(t) = A_1 e^{-\alpha t} + A_2 e^{-\alpha t} = A_3 e^{-\alpha t}} \end{align}

Isso não pode ser a solução, pois as duas condições iniciais não podem ser satisfeitas com a constante única A3. Assim, de acordo com a resolucao de equações diferenciais de segunda ordem, resposta natural de um circuito com amortecimento crítico é a soma de dois termos: exponencial negativa e exponencial negativa multiplicada por um termo linear:

\begin{align} {\Large i(t) = (A_2 + A_1 t)e^{-\alpha t}} \end{align}

essa figura é um esboço de i(t) = te^(–αt), que atinge um valor máximo igual a e^(–1)/α em t = 1/α, uma constante de tempo, e então decresce até chegar a zero.

Subamortecimento

Para α < ω0, temos C < 4L/R^2. As raízes podem ser escritas como:

\begin{align} {\Large s_1 = -\alpha + \sqrt{ \alpha^2 - \omega_0^2 } = -\alpha + j\omega_d} \\{\Large s_2 = -\alpha - \sqrt{ \alpha^2 - \omega_0^2 } = -\alpha - j\omega_d} \end{align}

onde j = √-1 e ωd = √(ω0^2 - α^2) que é chamada frequência de amortecimento. Tanto v0 como vd são frequências naturais, porque ajudam a determinar a resposta natural; enquanto ω0 é muitas vezes denominada frequência natural não amortecida, ωd é chamada frequência natural amortecida. A resposta natural é:

\begin{align} {\Large i(t) = e^{-\alpha t} (B_1 cos(\omega_d t) + B_2 sen(\omega_d t))} \end{align}

onde B1 = A1 + A2 e B2 = j(A1 - A2)

Considerações

R = 0 produz uma resposta perfeitamente senoidal. Essa resposta não pode ser concretizada na prática com L e C em virtude das perdas inerentes nesses elementos. Um dispositivo eletrônico chamado oscilador é capaz de produzir uma resposta perfeitamente senoidal.

Concluímos esta seção enfatizando as seguintes propriedades interessantes e peculiares de um circuito RLC:

  1. O comportamento de um circuito destes pode ser compreendido pelo conceito de amortecimento, que é a perda gradual da energia inicial armazenada. Se R = 0 diz-se que o circuito está sem perdas, pois o elemento amortecedor ou dissipador (R) não está presente. Ajustando-se o valor de R, a resposta pode ser não amortecida, com amortecimento supercrítico, com amortecimento crítico ou então subamortecida.

  2. A resposta oscilatória é possível em razão da presença de dois tipos de elementos de armazenamento. Ter tanto L como C possibilita que o fluxo de energia fique indo e vindo entre eles. A oscilação amortecida, exibida pela resposta subamortecida, é conhecida como oscilação circular.

  3. O caso com amortecimento crítico é a fronteira entre os casos de subamortecimento e de amortecimento supercrítico e ela cai de forma mais rápida. Com as mesmas condições iniciais, o caso de amortecimento supercrítico tem o tempo de acomodação mais longo, pois ele leva o maior tempo para dissipar a energia inicialmente armazenada. Se desejarmos uma resposta que se aproxime do valor final mais rapidamente sem oscilação ou com oscilação circular, o circuito com amortecimento crítico é o mais indicado.

Exemplo 8.3

Na Figura 8.8, R = 40 Ω , L = 4 H e C = 1/4 F. Calcule as raízes características do circuito. A resposta natural é com amortecimento supercrítico, com subamortecimento ou com amortecimento crítico?


In [3]:
print("Exemplo 8.3")
R = 40
L = 4
C = 1/4

def sqrt(x):
    r = x**(1/2)
    return r

alpha = R/(2*L)
omega = 1/(sqrt(L*C))
s1 = -alpha + sqrt(alpha**2 - omega**2)
s2 = -alpha - sqrt(alpha**2 - omega**2)

resposta = ""

if alpha > omega:
    resposta = "superamortecimento"
elif alpha == omega:
    resposta = "amortecimento crítico"
else:
    resposta = "subamortecimento"

print("Raiz s1:",s1)
print("Raiz s2:",s2)
print("Resposta:",resposta)


Exemplo 8.3
Raiz s1: -0.10102051443364424
Raiz s2: -9.898979485566356
Resposta: superamortecimento

Problema Prático 8.3

Se R = 10, L = 5 H e C = 2 mF na Figura 8.8, determine alpha, omega0, s1 e s2. Qual é o tipo de resposta natural que o circuito apresentará?


In [4]:
print("Problema Prático 8.3")

m = 10**(-3) ##definicao de mili

R = 10
L = 5
C = 2*m

alpha = R/(2*L)
omega = 1/(sqrt(L*C))
s1 = -alpha + sqrt(alpha**2 - omega**2)
s2 = -alpha - sqrt(alpha**2 - omega**2)

resposta = ""

if alpha > omega:
    resposta = "superamortecimento"
elif alpha == omega:
    resposta = "amortecimento crítico"
else:
    resposta = "subamortecimento"

print("Alpha:",alpha)
print("Omega:",omega)
print("Raiz s1:",s1)
print("Raiz s2:",s2)
print("Resposta:",resposta)


Problema Prático 8.3
Alpha: 1.0
Omega: 10.0
Raiz s1: (-0.9999999999999994+9.9498743710662j)
Raiz s2: (-1.0000000000000007-9.9498743710662j)
Resposta: subamortecimento

Exemplo 8.4

Determine i(t) no circuito da Figura 8.10. Suponha que o circuito tenha atingido o estado estável em t = 0–.


In [25]:
print("Exemplo 8.4")

from sympy import *

t = symbols('t')
A2 = symbols('A2')

C = 20*m
L = 0.5
Vs = 10

#tensao e corrente iniciais
v0 = Vs*6/(6 + 4)
i0 = v0/6

#t > 0
R = 3 + 6
alpha = R/(2*L)
omega = 1/(sqrt(L*C))

s1 = -alpha + sqrt(alpha**2 - omega**2)
s2 = -alpha - sqrt(alpha**2 - omega**2)

def resposta_rlc(alpha, omega): #funcao para verificar tipo de resposta
    resposta = ""
    if alpha > omega:
        resposta = "superamortecimento"
    elif alpha == omega:
        resposta = "amortecimento crítico"
    else:
        resposta = "subamortecimento"
    return resposta

resposta = resposta_rlc(alpha,omega)
    
omegad = sqrt(omega**2 - alpha**2)

#Tipo de resposta:
#alpha < omega -> subamortecido -> i(t) = e^(-alpha t)*(A1*cos(wd*t) + A2*sen(wd*t))
#i(0) = 1 -> A1 = 1

print("Tensao inicial capacitor:",v0)
print("Corrente inicial indutor:", i0)
print("Alpha:",alpha)
print("Omega:",omega)
print("Raiz s1:",s1)
print("Raiz s2:",s2)
print("Resposta:",resposta)

#resposta completa
r = exp(-alpha*t)*(cos(omegad*t) + A2*sin(omegad*t))
#di/dt = -1/L * [Ri(0) + v(0)] = -6 A/s
#porem
r2 = r.diff(t)
print("i(0):",r2.subs(t,0))
#assim
A2 = (-6 + 9)/4.35
print("Constante A2:",A2)
r = exp(-alpha*t)*(cos(omegad*t) + A2*sin(omegad*t))
print("Resposta completa:",r)


Exemplo 8.4
Tensao inicial capacitor: 6.0
Corrente inicial indutor: 1.0
Alpha: 9.0
Omega: 10.0000000000000
Raiz s1: -9.0 + 4.35889894354067*I
Raiz s2: -9.0 - 4.35889894354067*I
Resposta: subamortecimento
i(0): 4.35889894354067*A2 - 9.0
Constante A2: 0.6896551724137931
Resposta completa: (0.689655172413793*sin(4.35889894354067*t) + cos(4.35889894354067*t))*exp(-9.0*t)

Problema Prático 8.4

O circuito da Figura 8.12 atingiu o estado estável em t = 0–. Se o interruptor muda para a posição b em t = 0, calcule i(t) para t > 0.


In [30]:
print("Problema Prático 8.4")

A2 = symbols('A2')

L = 1
C = 1/9
Vs = 100

#para t < 0
i0 = Vs/10
v0 = 0

#para t > 0
R = 5
alpha = R/(2*L)
omega = 1/(sqrt(L*C))
resposta = resposta_rlc(alpha,omega)
omegad = sqrt(omega**2 - alpha**2)

#Encontrar constantes A1 e A2

#i(0) = Vs/10 = 10 A
#i(t) = exp(-alpha*t)*(A1*cos(omegad*t) + A2*sin(omegad*t))
#i(0) = A1
A1 = 10
#di/dt = -1/L * [Ri(0) + v(0)]
di = -1/L * (R*i0 + v0)
print("di/dt:",di) #di = -50
r = exp(-alpha*t)*(A1*cos(omegad*t) + A2*sin(omegad*t))
r2 = r.diff(t)
print("i(0):",r2.subs(t,0)) #1.65831*A2 - 25
A2 = (di + 25)/1.65831
print("Constante A2:",A2)

#Resposta completa
r = exp(-alpha*t)*(A1*cos(omegad*t) + A2*sin(omegad*t))

print("Alpha:",alpha)
print("Omega0:",omega)
print("Resposta:",resposta)
print("i(t):",r)


Problema Prático 8.4
di/dt: -50.0
i(0): 1.6583123951777*A2 - 25.0
Constante A2: -15.075589003262358
Alpha: 2.5
Omega0: 3.00000000000000
Resposta: subamortecimento
i(t): (-15.0755890032624*sin(1.6583123951777*t) + 10*cos(1.6583123951777*t))*exp(-2.5*t)